package command;

import memento.Memento;
import gestionnaire.Gestionnaire;
import invoker.IIHM;
import receiver.Enregistreur;
import receiver.ME;

public class EffacerTexte implements Command {

	/**
	 * le moteur d'edition
	 */
	ME moteur;
	
	/**
	 * Construit une commande concrete EffacerTexte
	 * @param moteur : le moteur d'edition
	 */
	public EffacerTexte (ME moteur){
			this.moteur = moteur;
			//this.ihm = ihm;
	}
	
	@Override
	public void executer() {
		
		//on informe le gestionnaire la future modification
		try {
			Gestionnaire.getInstance().sauvegarder();
		} catch (CloneNotSupportedException e) {
			e.printStackTrace();
		}
		//on execute la commande
		moteur.effacerTexte();
		//System.out.println("saisie executé");

		if (Enregistreur.getInstance().isEnMarche())
			Enregistreur.getInstance().enregistrer(this);
	}
	
	@Override
	public void rejouer() {
		moteur.effacerTexte();
	}
	
	@Override
	public Memento getMemento() {
		return null;
	}
	@Override
	public void setMemento(Memento memento) {
		
	}

}
